import request from '@/utils/request';

// 查询机构信息详细
export function getOrg(id) {
  return request({
    url: '/system/org/queryById/' + id,
    method: 'get',
  });
}

// 查询机构信息列表
export function listOrg(query) {
  return request({
    url: '/system/org/queryList',
    method: 'get',
    params: query,
  });
}

// 查询已发布的机构信息列表
export function queryRelease(params) {
  return request({
    url: '/system/org/queryRelease',
    method: 'get',
    params,
  });
}

// 查询逻辑删除的机构信息列表
export function queryRecycle(params) {
  return request({
    url: '/system/org/queryRecycle',
    method: 'get',
    params,
  });
}

// 新增机构信息
export function addOrg(data) {
  return request({
    url: '/system/org/insert',
    method: 'post',
    data: data,
  });
}

// 修改机构信息
export function updateOrg(data) {
  return request({
    url: '/system/org/updateById',
    method: 'put',
    data: data,
  });
}

// 根据id批量审核
export function auditByIds(ids) {
  return request({
    url: '/system/org/auditByIds/' + ids,
    method: 'put',
  });
}

// 根据id批量反审核
export function unauditByIds(ids) {
  return request({
    url: '/system/org/unauditByIds/' + ids,
    method: 'put',
  });
}
// 导出当前查询列表
export function exports(params) {
  return request({
    url: '/system/org/export',
    method: 'post',
    params,
  });
}

// 删除机构信息
export function delOrg(ids) {
  return request({
    url: '/system/org/deleteByIds/' + ids,
    method: 'delete',
  });
}

// 根据id批量还原删除的机构信息
export function recoverByIds(ids) {
  return request({
    url: '/system/org/recoverByIds/' + ids,
    method: 'put',
  });
}
// 根据id批量逻辑删除机构信息
export function removeByIds(ids) {
  return request({
    url: '/system/org/removeByIds/' + ids,
    method: 'delete',
  });
}

// 查询机构列表（排除节点）
export function listOrgExcludeChild(orgId) {
  return request({
    url: '/system/org/list/exclude/' + orgId,
    method: 'get',
  });
}

// 查询机构下拉树结构
export function treeselect() {
  return request({
    url: '/system/org/queryReleaseTree',
    method: 'get',
  });
}

// 根据角色ID查询机构树结构
export function roleOrgTreeselect(roleId) {
  return request({
    url: '/system/org/roleOrgTreeselect/' + roleId,
    method: 'get',
  });
}
